package com.beifeng.hadoop.hdfs.secondarysort;

import org.apache.hadoop.io.RawComparator;
import org.apache.hadoop.io.WritableComparator;


//自定义分组,实现RawComparator接口
public class GoupingCompartor implements RawComparator<IntPair> {

	public int compare(IntPair o1, IntPair o2) {
		
		int pair1 = o1.getFirst();
		int pair2 = o2.getFirst();
		
		return  pair1==pair2 ? 0 :( pair1<pair2 ? -1 : 1 ) ;
	}
	
	//一个字节一个字节比较,直到找到一个不相同的字节,然后比这个字节的大小作为两个字节流的大小比较结果
	public int compare(byte[] b1, int s1, int l1, byte[] b2, int s2, int l2) {

		return  WritableComparator.compareBytes(b1,  s1, Integer.SIZE/8 , b2, s2, Integer.SIZE/8); 
	}
	
	

}
